/******************************************************************************\
 *                                                                              *
 *     File: Persoon.cc                                                         *
 *                                                                              *
 *   Author: Jan Meuleman / Douwe A. van Twillert                               *
 *  Purpose: de definitie (implementatie) van de klasse Huwelijk                *
 *  Version: 1.0      MEM 20020124                                              *
 *           - eerste versie                                                    *
 *  Version: 1.1      TWI 20080220                                              *
 *           - header aangepast voor duidelijk kunnen printen                   *
 *           - kleine aanpassingen om het half werkend te krijgen               *
 *                                                                              *
\******************************************************************************/

#include <assert.h>
#include "Persoon.h"
#include "Huwelijk.h"

Persoon::Persoon(string naam, int geboortejaar, Geslacht geslacht) {
    this->naam = naam;
    this->geboortejaar = geboortejaar;
    this->geslacht = geslacht;
}

Persoon::~Persoon() {
    //niks speciaals
}

string Persoon::getNaam() {
    return naam;
}

int Persoon::getGeboortejaar() {
    return geboortejaar;
}

Huwelijk* Persoon::getHuwelijk() {
    return huwelijk;
}

string Persoon::getGeslacht() {
    if (geslacht == 1) {
        return "Vrouw";
    }
    return "Man";
}

void Persoon::setHuwelijk(Huwelijk* huwelijk) {
    this->huwelijk = huwelijk;
}

void Persoon::setBaby(Persoon* baby) {
    this->baby = baby;
}

Persoon* Persoon::getBaby() {
    return baby;
}

Persoon* Persoon::geefPartner() {
    if (huwelijk->getPersoon1() == this) {
        return huwelijk->getPersoon2();
    }
    return huwelijk->getPersoon1();
}

void Persoon::drukAf() {
    cout << "Naam: " << naam << " ,Geboortejaar: " << geboortejaar << " ,Geslacht: " << getGeslacht() << endl << flush;
}